/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cr.ac.una.sive.managed;

import cr.ac.una.sive.entidad.Marca;
import cr.ac.una.sive.entidad.Vehiculo;
import cr.ac.una.sive.entidadLocal.MarcaLocal;
import cr.ac.una.sive.sessionbean.MarcaFacadeLocal;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.model.SelectItem;

/**
 *
 * @author claribel
 */
@ManagedBean
@RequestScoped
public class MarcaFacadeManaged {
    @EJB(mappedName = "ejb/MarcaFacade")
    private cr.ac.una.sive.sessionbean.MarcaFacadeLocal marcaFacade;

    private Integer id_marca;
    private String nombre;
    private Set<Vehiculo> vehiculos = new HashSet<Vehiculo>(0);
    private ArrayList listaMarcas = new ArrayList();
    
    
    private MarcaLocal marcaLocal = new MarcaLocal();

    public MarcaFacadeManaged() {
        
    }

    public Integer getId_marca() {
        return id_marca;
    }

    public void setId_marca(Integer id_marca) {
        this.id_marca = id_marca;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public Set<Vehiculo> getVehiculos() {
        return vehiculos;
    }

    public void setVehiculos(Set<Vehiculo> vehiculos) {
        this.vehiculos = vehiculos;
    }

    public void setListaMarcas(ArrayList listaMarcas) {
        this.listaMarcas = listaMarcas;
    }
    
    

    public MarcaLocal getMarcaLocal() {
        return marcaLocal;
    }

    public void setMarcaLocal(MarcaLocal marcaLocal) {
        this.marcaLocal = marcaLocal;
    }

    public MarcaFacadeLocal getMarcaFacade() {
        return marcaFacade;
    }

    public void setMarcaFacade(MarcaFacadeLocal marcaFacade) {
        this.marcaFacade = marcaFacade;
    }
    
    
    /**
     * Creates a new instance of MarcaFacadeLocal
     */
    public MarcaFacadeManaged(String nombre, Integer id_marca,Set <Vehiculo> vehiculos) {
        
        this.nombre = nombre;
        this.id_marca = id_marca;
        this.vehiculos = vehiculos;
    }
    
      public ArrayList getListaMarcas() {        
       
        List<Marca> marcas = marcaFacade.findAll();
        listaMarcas.clear();

        for(int i=0; i<marcas.size(); i++)
        {
            Marca mar = new Marca();
            mar = (Marca)marcas.get(i);
           
            listaMarcas.add(new SelectItem(mar,mar.getNombre()));
        }      
       
        return listaMarcas;
    }
}
